
function cargarPac(fila,codigo,ruc,nomRepre){
    document.getElementById(codigo).value= fila.cells[0].textContent ;
    document.getElementById(ruc).value= fila.cells[2].textContent ;        
    document.getElementById(nomRepre).value=fila.cells[4].textContent+" "+fila.cells[5].textContent; 
    var tabla=fila.parentNode;        
    for(var i=0;tabla.rows.length>0;){            
        tabla.deleteRow(i);            
    }
    $('#myModalC').modal('hide');
}
function validadTotal(){
    var total=document.getElementById('total').value;
    if(total=="" || total=="0"){
        alert("Debe calcular el total para guardar"); return false;
    }
    else return true;
}
function reducriHidden(name){
    var auto=document.getElementById(name);
    var num=parseInt(auto.value)-1;
    auto.value = num;    
}
function agregAcorFase(nomPap,namCantFase,nombItem,numItem){
    
    var auto=document.getElementById(namCantFase);
    var num=parseInt(auto.value)+1;
    auto.value = num;
    var divpapa=document.getElementById(nomPap);
    var grupo = document.createElement('div'); // 1
    grupo.className="accordion-group";
    grupo.id="fase"+numItem;
    var cabezal = document.createElement('div'); // 2
    cabezal.className='accordion-heading';
    cabezal.innerHTML="<a class='accordion-toggle' data-toggle='collapse' data-parent='#"+nomPap+"' href='#acorFase"+numItem+"'>Tareas de: "+nombItem+"</a>";
    var cuerpo=document.createElement('div'); 
    cuerpo.id="acorFase"+numItem;
    cuerpo.className="accordion-body collapse ";
    var contenido=document.createElement('div');
    contenido.className="accordion-inner";
    contenido.innerHTML="<fieldset class='well'>    \n\
<table class='table table-bordered'>  \n\
<input type='hidden' value='0' name='numFas[]' id='numFase"+numItem+"'>\n\      \n\
<tbody>        <td>                                                \n\
<div class='control-group'>                <label class='control-label' for='tipFa'>Fase de Trabajo* </label>                <div class='controls'> <select id='tipFa"+numItem+"' name='tipFa[]' onchange=\"cargarTrabajos('tipFa"+numItem+"',"+numItem+",'coduser')\"'>  <option value='-1' >Seleccione Tipo</option> <option value='0' >Pre-Costura</option>  <option value='1' >Costura</option> <option value='2' >Acabado</option>  </select>                </div>            </div>\n\
<div class='control-group'>            <label class='control-label' for='nomFas'>Nombre Tarea*</label><div class='controls' id='comboTrabajos"+numItem+"' name='comboTrabajos"+numItem+"'><select id='nomFas"+numItem+"' name='nomFas[]'>  </select>           </div>            </div> <div class='control-group'>            <label class='control-label' for='descrip'>Descripción </label>            <div class='controls'>                <textarea id='descrip"+numItem+"' name='descrip[]' rows='3'></textarea>            </div>            </div>                                            </td>        <td>            <div class='control-group'>                <label class='control-label' for='cost"+numItem+"'>Unidad de Costeo* </label>                <div class='controls'>                    <select id='cost"+numItem+"' name='UniFas[]'>                        <option>Hora/Hombre</option>                        <option>Pieza</option>                        <option>Prenda</option>                        <option>Sueldo</option>                     </select>                </div>            </div>            <div class='control-group'>                <label class='control-label' for='precUniCost'>Pre. x Unid Costeo (S/.)* </label>                <div class='controls'>                    <input class='input-small' id='precUniCost"+numItem+"' name='precUniCost[]' placeholder='PrecioxUnidad' type='text' >                </div>            </div>            <div class='control-group'>            <label class='control-label' for='cantUni'>Cant. Unid Costeo* </label>            <div class='controls'>                <input class='input-small' id='cantUnifase"+numItem+"' name='cantUnifase[]' placeholder='Cantidad' type='text' >                                                    </div>            </div>            <div class='control-group'>                                                <div class='controls'>                \n\
<button class='btn btn-info' type='button' \n\
onclick=\"agregarFase('numFase"+numItem+"','nomFas"+numItem+"','tipFa"+numItem+"','descrip"+numItem+"','cost"+numItem+"','precUniCost"+numItem+"','cantUnifase"+numItem+"','tablaFase"+numItem+"','subTota"+numItem+"','cantidPrendas"+numItem+"','prUni"+numItem+"','fasesOcultas')\">Agregar Fase</button>\n\
             </div>            </div>        </td>        </tbody>    </table>        \n\
<table  id='tablaFase"+numItem+"' class='table table-striped' width='100%'>                            \n\
<caption><h4>Fases</h4></caption>            \n\
<thead>                <th >Nro. Fase</th> <th  >Nombre Fase</th> <th  >Tipo Fase</th>   <th  >Descripción</th>   <th  >P. Unid Costeo (S/.)</th>                <th  >Unidad Costeo</th>                 <th >Cant. Unid Costeo</th>                <th  >Subtotal</th>                <th>Quitar</th>             </thead>           \n\
 <tbody >                 </tbody>                           </table>   </fieldset>";
    
    cuerpo.appendChild(contenido); 
    grupo.appendChild(cabezal);
    grupo.appendChild(cuerpo);
    divpapa.appendChild(grupo);
}
function agregAcordIns(nomPap,namCantIns,nombInsu,numItem,ruta){
    var auto=document.getElementById(namCantIns);
    var num=parseInt(auto.value)+1;
    auto.value = num;
    var divpapa=document.getElementById(nomPap);
    var grupo = document.createElement('div'); // 1
    grupo.className="accordion-group";
    grupo.id="insu"+numItem;
    var cabezal = document.createElement('div'); // 2
    cabezal.className='accordion-heading';
    cabezal.innerHTML="<a class='accordion-toggle' data-toggle='collapse' data-parent='#"+nomPap+"' href='#acorIns"+numItem+"'>Insumos de: "+nombInsu+"</a>";
    var cuerpo=document.createElement('div'); 
    cuerpo.id="acorIns"+numItem;
    cuerpo.className="accordion-body collapse ";
    var contenido=document.createElement('div');
    contenido.className="accordion-inner";
    contenido.innerHTML="\
<input type='hidden' name='idInsumo[]' id='idInsu"+numItem+"' value=''><input type='hidden' name='indicador[]' id='indicador"+numItem+"' value='0'> \n\
<fieldset class='well'>\n\
<input type='hidden' value='0' name='numInsu[]' id='numInsu"+numItem+"'>\n\
<table class='table table-bordered'><tbody><td>    \n\
<div class='control-group'>    \n\
<label class='control-label' for='nomIns'>Nombre Insumo* </label><div class='controls'><input class='input-small' id='nomIns"+numItem+"' name='nomIns"+numItem+"' type='text'  onkeyup=\"lookup(this.value,'nomIns"+numItem+"',"+numItem+")\" ><button class='btn btn-mini btn-success' type='button' onclick='buscarProveedor("+numItem+")'>Buscar Proveedor</button></div></div>\n\
<div class='suggestionsBox' id='suggestions"+numItem+"' style='display: none;'>\n\
<img src='"+ruta+"upArrow.png' style='position: relative; top: -12px; left: 30px;' alt='upArrow' />\n\
<div class='suggestionList' id='autoSuggestionsList"+numItem+"'></div></div>    \n\
<div class='control-group'>    <label class='control-label' for='cantIn"+numItem+"'>Cantidad* </label>    \n\
<div class='controls'>        <input class='input-small' id='cantIn"+numItem+"'name='cantIn"+numItem+"' type='text' >       \n\
 <input class='input-small' id='unid"+numItem+"' name='unid"+numItem+"' placeholder='Unidad' type='text' >    </div>    </div>    \n\
<div class='control-group'>    <label class='control-label' for='preUni"+numItem+"'>Pre x Unit.Aprox.* (S/.) </label>    \n\
<div class='controls'>        <input class='input-small' id='preUni"+numItem+"' name='preUni"+numItem+"' type='text' > \n\
</div>    </div></td><td><div id='comboProveedor"+numItem+"'> <div class='control-group'> \n\
<label class='control-label' for='trabajo"+numItem+"'>Proveedor</label> <div class='controls'><select ></select></div></div></div>    <div class='control-group'>    \n\
<label class='control-label' for='descIns'>Descripción </label>    \n\
<div class='controls'>        <textarea id='descIns"+numItem+"' name='descIns"+numItem+"' rows='3'></textarea>  \n\
  </div>    </div>    <div class='control-group'>  <div class='controls'> \n\
 <button class='btn btn-info' type='button' \n\
onclick=\"agregarInsumo('idInsu"+numItem+"','numInsu"+numItem+"','nomIns"+numItem+"','cantIn"+numItem+"','unid"+numItem+"','preUni"+numItem+"','descIns"+numItem+"','tablInsum"+numItem+"','subTota"+numItem+"','cantidPrendas"+numItem+"','prUni"+numItem+"','insumOcultos','provedor"+numItem+"')\">Agregar Insumo</button>    \n\
 </div>    </div></td></tbody></table> \n\
 <table id='tablInsum"+numItem+"' class='table table-striped' width='100%'> \n\
 <caption><h4>Insumos</h4></caption>    <thead>        <th  >Nro. Insumo</th>  \n\
  <th  >Nombre</th>         <th  >Cantidad</th>        <th  >Unidad</th><th>Proveedor</th> \n\
 <th  >Pre X Unit. Aprox.(S/.)</th>                        <th >Descripción</th>  \n\
 <th >Total (S/.)</th> <th>Quitar</th> </thead> <tbody> </tbody></table></fieldset>";
    
    cuerpo.appendChild(contenido); 
    grupo.appendChild(cabezal);
    grupo.appendChild(cuerpo);
    divpapa.appendChild(grupo);
}
function actualizarSubtoprodu(cant){
    var campo=document.getElementById('subtotalGen');
    var valor=campo.value;
    var sub;
    if(valor!=""){
        sub=parseFloat(cant)+parseFloat(valor);
        campo.value=sub;
    }
    else {campo.value=cant;sub=cant}
}
function calcular(){
    var numItem=parseInt(document.getElementById('numItem').value);
    var Subto=document.getElementById('subtotalGen');
    var porigv=document.getElementById('igvpo').value;        
    var porUtil=document.getElementById('porUtil').value;
    if(numItem==0){
        alert("Debe agregar Item a producir");
    } else if(porigv==""){
        alert("Debe ingresar porcentaje IGV");
    }
    else if(porUtil==""){
        alert("Debe ingresar porcentaje ganancia");
    } else{
        var costo=0;
        for(var i=1;i<=numItem;i++){
            if(document.getElementById(('subTota'+i))!=null)
            costo+=parseFloat(document.getElementById(('subTota'+i)).value);
        }
        var utilid=(costo*porUtil)/100;
        var igv=(costo*porigv)/100;
        Subto.value=costo;
        document.getElementById('igv').value=igv;
        document.getElementById('util').value=utilid;
        document.getElementById('total').value=parseFloat(costo)+utilid+igv;        
    }
}

function crearInputHidden(num,valor,nombre,id){
    var campo = document.createElement('input'); // 5  
    campo.type = 'hidden'; // 6
    campo.name = nombre; // 6
    campo.id = id+num; // 6 
    campo.value=valor;
    return campo;
}
function crearCelda(StrHtml){
    var objTd = document.createElement("td");  //creamos cada celda    
    objTd.innerHTML = StrHtml;  // asignamos el html al td
    return objTd;
}
function limpiarInput(name){
    var campInp = document.getElementById(name);
    campInp.value="";
}
function crearHiddenenDiv(idDivHidde,nomHidden,idHidden,num,valor){
    var fi = document.getElementById(idDivHidde);
    fi.appendChild(crearInputHidden(num,valor,nomHidden,idHidden));
}
function quitarHidden(nomHidden){
    var fi = document.getElementById(nomHidden);
    removeinput(fi);
}

function crearHiddenTablas(idDivHidde,nomTabla,num){
    var tabla=document.getElementById(nomTabla);
    var fi = document.getElementById(idDivHidde);
    for (var i=1;i<tabla.rows.length;i++){
        for (var j=0;j<tabla.rows[i].cells.length-1;j++){            
           fi.appendChild(crearInputHidden(num,tabla.rows[i].cells[j].innerHTML,tabla.rows[i].cells[j].name,tabla.rows[i].cells[j].id));
        }
     };
}
function cargarItem(idDivHidde,numItem,NomItem,codItm,categoria,cantidad,descrip,preUni,subtotal,nametable,tablaInsu,tablaFase,numIns,numFas){
    if(confirm("AVISO: ¿Esta seguro que desea agregar el Item?")){
            var auto = document.getElementById(numItem); 
            var num=parseInt(auto.value)+1;
            auto.value = num;  //aumentamos el id de los campos
            var fi = document.getElementById(idDivHidde); 
            var nuIns = document.getElementById(numIns).value;
            var nuFas = document.getElementById(numFas).value;
            var nombIte=document.getElementById(NomItem).value;
            var codItem=document.getElementById(codItm).value;
            var cantItem=document.getElementById(cantidad).value;
            var objCat=document.getElementById(categoria);
            var categItem=objCat.options[objCat.selectedIndex].value;       
            var descripcion=document.getElementById(descrip).value;
            var precioUnitario=document.getElementById(preUni).value;
            var subTut=document.getElementById(subtotal).value;
            //Se crean los hidden
            fi.appendChild(crearInputHidden(num,nuIns,'CantInsu[]','CantInsu'));
            fi.appendChild(crearInputHidden(num,nuFas,'CantFase[]','CantFase'));
            fi.appendChild(crearInputHidden(num,num,'numItems[]','item')); // 7
            fi.appendChild(crearInputHidden(num,nombIte,'nomItems[]','nomItems')); // 7
            fi.appendChild(crearInputHidden(num,codItem,'codItems[]','codItems')); // 7
            fi.appendChild(crearInputHidden(num,categItem,'catItem[]','catItem')); // 7
            fi.appendChild(crearInputHidden(num,descripcion,'descItem[]','descItem')); // 7
            fi.appendChild(crearInputHidden(num,cantItem,'cantItem[]','cantItem')); // 7
            fi.appendChild(crearInputHidden(num,precioUnitario,'pUItem[]','pUItem')); // 7
            fi.appendChild(crearInputHidden(num,subTut,'subItem[]','subItem')); // 7
            crearHiddenTablas(idDivHidde,tablaInsu,num);
            crearHiddenTablas(idDivHidde,tablaFase,num)
            //se agrega la fila
            var objTr = document.createElement("tr");  //se crea una fila
            objTr.appendChild(crearCelda("<label>"+codItem+"</label>"));
            objTr.appendChild(crearCelda("<label>"+nombIte+"</label>"));
            objTr.appendChild(crearCelda("<label>"+categItem+"</label>"));
            objTr.appendChild(crearCelda("<label>"+cortarcadena(descripcion,15)+"</label>"));
            objTr.appendChild(crearCelda("<label>"+cantItem+"</label>"));
            objTr.appendChild(crearCelda("<label>"+precioUnitario+"</label>"));
            objTr.appendChild(crearCelda("<label>"+subTut+"</label>"));
            objTr.appendChild(crearCelda("<a class=\"btn btn-small\" onclick=\"remove(this)\"><i class=\"icon-remove-sign\"></i></a>"));
            var objTbody = document.getElementById(nametable);  //Seleccionamos el contenedor de las filas
            objTbody.appendChild(objTr); // agregamos la fila al contenedor
            $('#myModal').modal('hide')
            actualizarSubtoprodu(subTut)
    }

}
function quitarHiddenItem(num){
    quitarHidden('numItemPed'+num);
    quitarHidden('nomPed'+num);
    quitarHidden('categoItem'+num);
    quitarHidden('descripItem'+num);
}
function cargarItemPed(cantiItem,divFas,nomCantFase,divIns,nomCanIns,numItem,NomItem,categoria,cantidad,descrip,nametable,ruta){    
            
            var auto = document.getElementById(numItem); 
            var num=parseInt(auto.value)+1;
            auto.value = num;  //aumentamos el id de los campos
            var auto2 = document.getElementById(cantiItem); 
            var num2=parseInt(auto2.value)+1;
            auto2.value = num2;  //aumentamos el id de los campos
            var nombIte=document.getElementById(NomItem).value;        
            var cantItem=document.getElementById(cantidad).value;
            var objCat=document.getElementById(categoria);
            var categItem=$("#"+categoria+"").val()
            var nomCate=objCat.options[objCat.selectedIndex].innerText;       
            var descripcion=document.getElementById(descrip).value;
            //se agrega la fila
            if(vaidaVacio(NomItem,'Nombre Item') && vaidaVacio(cantidad,'Cantidad de Unidades') && validaNum(cantidad,'Cantidad')){
                var objTr = document.createElement("tr");  //se crea una fila
                objTr.appendChild(crearCelda("<label>"+num+"</label>"));
                crearHiddenenDiv('itemsOcultos','numItemPed[]','numItemPed',num,num);
                objTr.appendChild(crearCelda("<label>"+nombIte+"</label>"));
                crearHiddenenDiv('itemsOcultos','nomPed[]','nomPed',num,nombIte);
                objTr.appendChild(crearCelda("<label>"+nomCate+"</label>"));
                crearHiddenenDiv('itemsOcultos','categoItem[]','categoItem',num,categItem);
                objTr.appendChild(crearCelda("<label>"+cortarcadena(descripcion,15)+"</label>"));
                crearHiddenenDiv('itemsOcultos','descripItem[]','descripItem',num,descripcion);
                objTr.appendChild(crearCelda("<input class='span6' value="+cantItem+" id='cantidPrendas"+num+"' name='cantidPrendas[]' size='10' type='text' onblur=\"validaNum('cantidPrendas"+num+"','Cantidad');actualizarSubto('subTota"+num+"',0,'cantidPrendas"+num+"','prUni"+num+"','cantidPrendas"+num+"')\">"));   
                objTr.appendChild(crearCelda("<input readonly='readonly' class='span6' id='prUni"+num+"' name='prUni[]' size='16' type='text'>"));                
                objTr.appendChild(crearCelda("<input readonly='readonly' class='span6' id='subTota"+num+"' name='subTota[]' size='16' type='text'>"));                
                objTr.appendChild(crearCelda("<a class=\"btn btn-small\" onclick=\"remove(this);calcular();borrar('insu"+num+"','insumosdiv');borrar('fase"+num+"','fasessdiv');reducriHidden('"+cantiItem+"');quitarHiddenItem("+num+")\"><i class=\"icon-remove-sign\"></i></a>"));
                var objTbody = document.getElementById(nametable);  //Seleccionamos el contenedor de las filas
                objTbody.appendChild(objTr); // agregamos la fila al contenedor 
            }
            agregAcordIns(divIns,nomCanIns,nombIte,num,ruta)
            agregAcorFase(divFas,nomCantFase,nombIte,num)
}

function agregarItem(){
    $('#myModal').modal('show')
}

function abrirModal(name){
    $('#'+name+'').modal('show')
}
function limpiardiv(div){
    document.getElementById(div).innerHTML=""; 
}
function limpiartabla(tabla){
    var tabl=document.getElementById(tabla)   
        for(i=0;tabl.rows.length>0;){
            tabl.deleteRow(i);
        }
}


function mostrarFecha(){
     nombres_dias = new Array("Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado");
        nombres_meses = new Array("Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre");
        fecha_actual = new Date();
        dia_mes = fecha_actual.getDate();		//dia del mes
        strdia_mes = (dia_mes <= 9) ? "0" + dia_mes : dia_mes;
        dia_semana = fecha_actual.getDay();		//dia de la semana
        mes = fecha_actual.getMonth() + 1;
        strmes = (mes <= 9) ? "0" + mes : mes;
        anio = fecha_actual.getYear();
        if (anio < 100) anio = "19" + anio;		//pasa el año a 4 digitos
        else if ( ( anio > 100 ) && ( anio < 999 ) ) {	//efecto 2000
           var cadena_anio = new String(anio)
           anio = "20" + cadena_anio.substring(1,3)
        };
    document.write(dia_mes + " / " + mes + " / " + anio)
}
function actulizarPreUnit(nomCant,nomPreUnit,nomSub){
    var valCant=document.getElementById(nomCant).value;
    var campPreUnit=document.getElementById(nomPreUnit);
    var valSub=document.getElementById(nomSub).value;
    if((valSub!="") && (parseFloat(valCant)!=0) ){
        var numero=new Number(parseFloat(valSub)/parseFloat(valCant));
        campPreUnit.value=numero.toFixed(2);   
    }
}
function validaNum(namecampo,Nombre){
    var campo=document.getElementById(namecampo).value;
    if (!/^([0-9])*[.]?[0-9]*$/.test(campo)) {alert("El valor de " + Nombre + " no es un número");campo.focus();return false}
    else return true;
}
function reducirSubtoPreUni(cant,nomSubGen,cantUnidades,PreUnit){    
    var campoSubG=document.getElementById(nomSubGen);
    var valor=campoSubG.value;
    var sub;
    if(valor!=""){
        sub=parseFloat(valor)-parseFloat(cant);
        campoSubG.value=sub;
        actulizarPreUnit(cantUnidades,PreUnit,nomSubGen);
    }

}
function actualizarSubto(nombre,cant,nomCant,PreUnit,cantUnidades){
    var campo=document.getElementById(nombre);
    var valor=campo.value;
    var sub;
    if(valor!=""){
        sub=parseFloat(cant)+parseFloat(valor);
        campo.value=sub;
    }
    else {campo.value=cant;sub=cant};
    actulizarPreUnit(cantUnidades,PreUnit,nombre);
}
function vaidaVacio(namecampo,Nombre){
    var q=document.getElementById(namecampo).value;
    for (var i = 0; i < q.length; i++ ) {  
                if ( q.charAt(i) != " " ) {  
                        return true  
                }  
        }
        alert("Debe completar " + Nombre );
        q.focus();
        return false 
}
function crearCeldaModal(valor,name,id,num){
    var objTd = document.createElement("td");  //creamos cada celda
    objTd.innerHTML = valor;  // asignamos el html al td
    return objTd;
}
function reducirCont1(numItem){
    var auto = document.getElementById(numItem); 
    var num=parseInt(auto.value)-1;
    auto.value = num;  //aumentamos el id de los campos
}
function quitarHiddenInsumo(num){
    quitarHidden('numIns'+num);
    quitarHidden('nomIns'+num);
    quitarHidden('cantidadIns'+num);
    quitarHidden('precUniIns'+num);
    quitarHidden('descripIns'+num);
    quitarHidden('subtIns'+num);    
}
function validaComboProve(objt){
    if(objt!= undefined && objt.value==-1){
        alert("Debe selecionar Proveedor" );        
        return false 
    }return true
        
}
function agregarInsumo(idInsumo,numInsu,nomInsum,cantidad,unid,preciUni,Desc,nomtabla,subTotal,cantPrendas,preUniGaneral,idHidden,proveedor){
	var auto = document.getElementById(numInsu); 
	var num=parseInt(auto.value)+1;	       
        var isumoName=document.getElementById(nomInsum).value;
        var idInsu=document.getElementById(idInsumo).value;
        if(idInsu==''){
            idInsu=-1;
        }
        var cant=document.getElementById(cantidad).value;
        var unidad=document.getElementById(unid).value;
        var precUni=document.getElementById(preciUni).value;
        var descrip=document.getElementById(Desc).value;        
        var objprovedor=document.getElementById(proveedor);
        
        auto.value = num;  //aumentamos el id de los campos
        var subtotal=parseFloat(cant*precUni);
        //Se agregara cada campo
        if(vaidaVacio(nomInsum,'Nombre Insumo') && vaidaVacio(unid,'Unidad') && vaidaVacio(cantidad,'Cantidad') && 
            vaidaVacio(preciUni,'Precio Unidad') && 
            validaNum(cantidad,'Cantidad') && validaNum(preciUni,'Precio Unidad') && validaComboProve(objprovedor)){
            var nomProve='';var idProveedor='';
            
            if(objprovedor!=undefined){           
                var nomProve=objprovedor.options[objprovedor.selectedIndex].innerText;
                var idProveedor=document.getElementById(proveedor).value;
            } else nomProve='No existe';
            var objTr = document.createElement("tr");  //se crea una fila            
            crearHiddenenDiv(idHidden,'idInsu[]','idInsu',num,idInsu);
            objTr.appendChild(crearCeldaModal(num,'numIns[]','numIns',numInsu)); // agregamos el td a la fila            
            crearHiddenenDiv(idHidden,'numIns[]','numIns',num,num);
            objTr.appendChild(crearCeldaModal(isumoName,'nomIns[]','nomIns',numInsu)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'nomIns[]','nomIns',num,isumoName);
            objTr.appendChild(crearCeldaModal(cant,'cantidadIns[]','cantidadIns',numInsu)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'cantidadIns[]','cantidadIns',num,cant);
            objTr.appendChild(crearCeldaModal(unidad,'unidadIns[]','unidadIns',numInsu)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'unidadIns[]','unidadIns',num,unidad);
            objTr.appendChild(crearCeldaModal(nomProve,'proveedor[]','proveedor',numInsu)); // agregamos el td a la fila            
            crearHiddenenDiv(idHidden,'proveedor[]','proveedor',num,idProveedor);
            objTr.appendChild(crearCeldaModal(precUni,'precUniIns[]','precUniIns',numInsu)); // agregamos el td a la fila            
            crearHiddenenDiv(idHidden,'precUniIns[]','precUniIns',num,precUni);            
            objTr.appendChild(crearCeldaModal(descrip,'descripIns[]','descripIns',numInsu)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'descripIns[]','descripIns',num,descrip);
            objTr.appendChild(crearCeldaModal(subtotal,'subtIns[]','subtIns',numInsu)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'subtIns[]','subtIns',num,subtotal);
            
            var objTd4 = document.createElement("td");  //creamos cada celda
            StrHtml="<a class=\"btn btn-small\" onclick=\"reducirSubtoPreUni("+subtotal+",'"+subTotal+"','"+cantPrendas+"','"+preUniGaneral+"');calcular();remove(this);reducirHidden('"+numInsu+");quitarHiddenInsumo('"+num+"')\"><i class=\"icon-remove-sign\"></i></a>";
            objTd4.innerHTML = StrHtml;  // asignamos el html al td
            objTr.appendChild(objTd4); // agregamos el td a la fila	

            var objTbody = document.getElementById(nomtabla);  //Seleccionamos el contenedor de las filas
            objTbody.appendChild(objTr); // agregamos la fila al contenedor
            actualizarSubto(subTotal,subtotal,cantPrendas,preUniGaneral,cantPrendas);
            calcular();
            return false;	//evita que haya un submit por equivocacion.
        }
        else return false;	//evita que haya un submit por equivocacion.
	
}
function quitarHiddenFase(num){
    quitarHidden('numFase'+num);
    quitarHidden('faseName'+num);
    quitarHidden('valtipoFa'+num);
    quitarHidden('descripFas'+num);
    quitarHidden('precUniFas'+num);
    quitarHidden('UniFas'+num);  
    quitarHidden('cantFas'+num); 
    quitarHidden('subtFase'+num); 
}
function agregarFase(numFase,nomFase,tipoFas,descrip,formCost,precio,cantUni,nomtabla,subTotal,cantPrendas,preUniGaneral,idHidden){
	var auto = document.getElementById(numFase); 
	var num=parseInt(auto.value)+1;	         
        var faseName=$("#"+nomFase+"").val();
        var objTipoFa=document.getElementById(tipoFas);
        var tipoTar=$("#"+tipoFas+"").val();        
        var nomTare=objTipoFa.options[objTipoFa.selectedIndex].value;
        var descripcion=document.getElementById(descrip).value;
        var objFormCost=document.getElementById(formCost);
        var valFormCos=objFormCost.options[objFormCost.selectedIndex].value;         
        var precUni=document.getElementById(precio).value;
        var cant=document.getElementById(cantUni).value;
        
        auto.value = num;  //aumentamos el id de los campos
        var subtotal=parseFloat(cant*precUni);
        //Se agregara cada campo
        if(vaidaVacio(nomFase,'Nombre de Fase') && vaidaVacio(precio,'Precio Unidad') && vaidaVacio(cantUni,'Cantidad de Unidades') && validaNum(cantUni,'Cantidad de Unidades') && validaNum(precio,'Precio Unidad')){
            var objTr = document.createElement("tr");  //se crea una fila
            objTr.appendChild(crearCeldaModal(num,'numFase[]','numFase',numFase)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'numFase[]','numFase',num,num);
            objTr.appendChild(crearCeldaModal(faseName,'faseName[]','faseName',numFase)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'faseName[]','faseName',num,faseName);
            objTr.appendChild(crearCeldaModal(nomTare,'valtipoFa[]','valtipoFa',numFase)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'valtipoFa[]','valtipoFa',num,tipoTar);
            objTr.appendChild(crearCeldaModal(descripcion,'descripFas[]','descripFas',numFase)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'descripFas[]','descripFas',num,descripcion);
            objTr.appendChild(crearCeldaModal(precUni,'precUniFas[]','precUniFas',numFase)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'precUniFas[]','precUniFas',num,precUni);
            objTr.appendChild(crearCeldaModal(valFormCos,'UniFas[]','UniFas',numFase)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'UniFas[]','UniFas',num,valFormCos);
            objTr.appendChild(crearCeldaModal(cant,'cantFas[]','cantFas',numFase)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'cantFas[]','cantFas',num,cant);
            objTr.appendChild(crearCeldaModal(subtotal,'subtFase[]','subtFase',numFase)); // agregamos el td a la fila
            crearHiddenenDiv(idHidden,'subtFase[]','subtFase',num,subtotal);
            
            var objTd4 = document.createElement("td");  //creamos cada celda
            StrHtml="<a class=\"btn btn-small\" onclick=\"reducirSubtoPreUni("+subtotal+",'"+subTotal+"','"+cantPrendas+"','"+preUniGaneral+"');calcular();remove(this);reducirHidden('"+numFase+"');quitarHiddenFase('"+num+"')\"><i class=\"icon-remove-sign\"></i></a>";
            objTd4.innerHTML = StrHtml;  // asignamos el html al td
            objTr.appendChild(objTd4); // agregamos el td a la fila	

            var objTbody = document.getElementById(nomtabla);  //Seleccionamos el contenedor de las filas
            objTbody.appendChild(objTr); // agregamos la fila al contenedor
            actualizarSubto(subTotal,subtotal,cantPrendas,preUniGaneral,cantPrendas);
            calcular();
            return false;	//evita que haya un submit por equivocacion.
        }
        else return false;	//evita que haya un submit por equivocacion.
	
}


function cortarcadena(corta,numcarct){
    if(corta.length>numcarct){
        return corta.substr(0, numcarct)+"...";        
    }else return corta;
    
}

function removeinput(t){
    var dive = t.parentNode;        
    dive.removeChild(t);
}
function remove(t)
    {
        var td = t.parentNode;
        var tr = td.parentNode;
        var table = tr.parentNode;
        table.removeChild(tr);
    }

num=0;

function borrar(hijo,papa) {  
  var pap = document.getElementById(papa); // 1 
  var hij=document.getElementById(hijo);
  pap.removeChild(hij); // 10
}

function validar(objeto,nombre){
    var valor=objeto.value;
    if(valor.length == 0){
        alert('Debe completar el campo '+nombre);
        objeto.focus();
        return false;
    } else return true;
    
}
//
//validación de fecha
// Declaring valid date character, minimum year and maximum year
var dtCh= "-";
var minYear=1900;
var maxYear=2300;

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function isDate(dtStr){
	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strDay=dtStr.substring(0,pos1)
	var strMonth=dtStr.substring(pos1+1,pos2)
	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){
		alert("El formato de fecha debe ser : dd-mm-yyyy")
		return false
	}
	if (strMonth.length<1 || month<1 || month>12){
		alert("Porfavor ingrese un mes válido")
		return false
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		alert("Porfavor ingrese un día válido")
		return false
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		alert("Porfavor ingrese un año válido entre "+minYear+" y "+maxYear)
		return false
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		alert("Porfavor ingrese una fecha válida")
		return false
	}
return true
}
function ValidatePlaniForm(){
	 var dt=document.formCriterios.fecOpe;
	 var codigoOrd=document.formCriterios.codOr;
         var combCalsi=document.formCriterios.cat;
         var combTipo=document.formCriterios.tipo;
         var codCir=document.formCriterios.codCir;
         var codAna=document.formCriterios.codEnf;
         var codEnf=document.formCriterios.codAna;
         var campoDocReg=document.formCriterios.campoDocReg;       
        if (validar(codigoOrd,'Código Orden')==false){		
		return false
	}
        else if (validar(combCalsi,'Clasificación Cirugía')==false){		
		return false
	}
        else if (validar(combTipo,'Tipo Cirugía')==false){		
		return false
	}
        else if (isDate(dt.value)==false){
		dt.focus();
		return false
	}
        else if (validar(codCir,'Código cirujano')==false){		
		return false
	}
        else if (validar(codAna,'Código Anestesielogo')==false){		
		return false
	}
        else if (validar(codEnf,'Código Enfermera')==false){		
		return false
	}
        else if (validar(campoDocReg,'Código Doctor Registrante')==false){		
		return false
	}      
        else return true
 }

